package com.heima.user;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
/*
@SpringBootApplication: 启动 Spring Boot 应用，并自动配置 Spring 上下文。包含以下三个注解：
@SpringBootConfiguration: 类似于 @Configuration，用于标识一个类为配置类，可以用来定义 Spring Bean。
@EnableAutoConfiguration: 告诉 Spring Boot 根据类路径中的依赖库自动配置 Spring 应用上下文，例如，如果你有 spring-boot-starter-web 依赖，Spring Boot 会自动配置 Spring MVC 和嵌入式的 Tomcat 服务器。
@ComponentScan: 允许 Spring 自动扫描当前包及其子包下的所有组件（例如 @Controller, @Service, @Repository 等），并将它们注册为 Spring Bean。
 */



/*
 * @EnableDiscoveryClient 这个注解用于启用 Spring Cloud 的服务发现功能，使得应用可以注册到服务发现平台这个注解用于启用 Spring Cloud 的服务发现功能，使得应用可以注册到服务发现平台.本项目是nacos中。
 */



/*
 * @MapperScan 这个注解用于扫描指定包下的 MyBatis Mapper 接口，并将这些接口自动注册为 Spring Bean。
 * @MapperScan 是 MyBatis 框架提供的一个注解，用于指定要扫描的 Mapper 接口所在的包路径。这里是("com.heima.user.mapper")
 * Mapper 接口通常用于定义数据库操作的方法，而这些接口由 MyBatis 自动实现。通过这个注解，Spring 会自动发现和注册这些 Mapper 接口，使得它们可以被 Spring 管理并注入到服务层中使用。
 *
 */

@SpringBootApplication
@EnableDiscoveryClient
@MapperScan("com.heima.user.mapper")
public class UserApplication {

    public static void main(String[] args) {
        SpringApplication.run(UserApplication.class,args);
    }
}
